<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>QuantumLibrary: Bloomberg::quantum Namespace Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../jquery.js"></script>
<script type="text/javascript" src="../../dynsections.js"></script>
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../resize.js"></script>
<script type="text/javascript" src="../../navtreedata.js"></script>
<script type="text/javascript" src="../../navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(initResizable);
/* @license-end */</script>
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">QuantumLibrary
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="../../menudata.js"></script>
<script type="text/javascript" src="../../menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('../../',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('dc/d48/namespaceBloomberg_1_1quantum.html','../../');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">Bloomberg::quantum Namespace Reference</div>  </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d7/df5/structBloomberg_1_1quantum_1_1Allocator.html">Allocator</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/df0/structBloomberg_1_1quantum_1_1AllocatorTraits.html">AllocatorTraits</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allows application-wide settings for the various allocators used by Quantum.  <a href="../../db/df0/structBloomberg_1_1quantum_1_1AllocatorTraits.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d95/structBloomberg_1_1quantum_1_1BoostAllocator.html">BoostAllocator</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d0d/structBloomberg_1_1quantum_1_1BrokenPromiseException.html">BrokenPromiseException</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d87/classBloomberg_1_1quantum_1_1Buffer.html">Buffer</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Container which allows buffered access to a series of values. Values are pushed-in (written) by a producer(s) and pulled-out (read) by a consumer(s).  <a href="../../d1/d87/classBloomberg_1_1quantum_1_1Buffer.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/dfa/structBloomberg_1_1quantum_1_1BufferClosedException.html">BufferClosedException</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/dde/structBloomberg_1_1quantum_1_1BufferingDataException.html">BufferingDataException</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Capture.html">Capture</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Class allowing lambda parameter captures.  <a href="../../db/dda/classBloomberg_1_1quantum_1_1Capture.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d9d/classBloomberg_1_1quantum_1_1ConditionVariable.html">ConditionVariable</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">This class represents a coroutine-compatible implementation of the std::condition_variable. Most methods of the latter have been recreated with the same behavior. This object will yield instead of blocking if called from a coroutine.  <a href="../../da/d9d/classBloomberg_1_1quantum_1_1ConditionVariable.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Configuration.html">Configuration</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/df7/classBloomberg_1_1quantum_1_1Context.html">Context</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Concrete class representing a coroutine or a thread context.  <a href="../../d8/df7/classBloomberg_1_1quantum_1_1Context.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d7/dd7/structBloomberg_1_1quantum_1_1ContiguousPoolManager.html">ContiguousPoolManager</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides fast (quasi zero-time) in-place allocation for STL containers. Objects are allocated from a contiguous buffer (aka object pool). When the buffer is exhausted, allocation is delegated to the heap. The default buffer size is 1000.  <a href="../../d7/dd7/structBloomberg_1_1quantum_1_1ContiguousPoolManager.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d45/structBloomberg_1_1quantum_1_1CoroContextTag.html">CoroContextTag</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../db/d67/structBloomberg_1_1quantum_1_1CoroutinePoolAllocator.html">CoroutinePoolAllocator</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides fast (quasi zero-time) in-place allocation for coroutines. Coroutine stacks are pre-allocated from separate (i.e. non-contiguous) heap blocks and maintained in a reusable list.  <a href="../../db/d67/structBloomberg_1_1quantum_1_1CoroutinePoolAllocator.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../de/d0e/structBloomberg_1_1quantum_1_1CoroutinePoolAllocatorProxy.html">CoroutinePoolAllocatorProxy</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/da5/classBloomberg_1_1quantum_1_1Dispatcher.html">Dispatcher</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parallel execution engine used to run coroutines or IO tasks asynchronously. This class is the main entry point into the library.  <a href="../../d0/da5/classBloomberg_1_1quantum_1_1Dispatcher.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/daa/classBloomberg_1_1quantum_1_1DispatcherCore.html">DispatcherCore</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Class implementing the dispatching logic unto worker threads. Used for both coroutines and IO tasks.  <a href="../../da/daa/classBloomberg_1_1quantum_1_1DispatcherCore.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d7/d56/classBloomberg_1_1quantum_1_1Function.html">Function</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Similar implementation to std::function except that it allows capture of non-copyable types.  <a href="../../d7/d56/classBloomberg_1_1quantum_1_1Function.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d6/dea/classBloomberg_1_1quantum_1_1Function_3_01RET_07ARGS_8_8_8_08_4.html">Function&lt; RET(ARGS...)&gt;</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d25/structBloomberg_1_1quantum_1_1Functions.html">Functions</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Contains typedefs for various functions.  <a href="../../d0/d25/structBloomberg_1_1quantum_1_1Functions.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d14/classBloomberg_1_1quantum_1_1Future.html">Future</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Class representing a promised future. Can only be instantiated via a <a class="el" href="../../d1/d15/classBloomberg_1_1quantum_1_1Promise.html" title="Class representing a promised value.">Promise</a> object.  <a href="../../dc/d14/classBloomberg_1_1quantum_1_1Future.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/de1/structBloomberg_1_1quantum_1_1FutureAlreadyRetrievedException.html">FutureAlreadyRetrievedException</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d14/structBloomberg_1_1quantum_1_1FutureException.html">FutureException</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Exception thrown by a <a class="el" href="../../dc/d14/classBloomberg_1_1quantum_1_1Future.html" title="Class representing a promised future. Can only be instantiated via a Promise object.">Future</a> or <a class="el" href="../../d1/d15/classBloomberg_1_1quantum_1_1Promise.html" title="Class representing a promised value.">Promise</a> object during various errors.  <a href="../../d2/d14/structBloomberg_1_1quantum_1_1FutureException.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d63/classBloomberg_1_1quantum_1_1FutureJoiner.html">FutureJoiner</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Utility class that joins N futures into a single one.  <a href="../../dc/d63/classBloomberg_1_1quantum_1_1FutureJoiner.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/da6/structBloomberg_1_1quantum_1_1HeapAllocator.html">HeapAllocator</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides a heap-based object pool to the underlying <a class="el" href="../../d7/dd7/structBloomberg_1_1quantum_1_1ContiguousPoolManager.html" title="Provides fast (quasi zero-time) in-place allocation for STL containers. Objects are allocated from a ...">ContiguousPoolManager</a>. The default buffer size is 1000.  <a href="../../d2/da6/structBloomberg_1_1quantum_1_1HeapAllocator.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">interface &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/db0/structBloomberg_1_1quantum_1_1IContextBase.html">IContextBase</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">This interface exposes shared functionality between <a class="el" href="../../da/de3/structBloomberg_1_1quantum_1_1IThreadContext.html" title="Exposes methods to manipulate the thread context.">IThreadContext</a> and <a class="el" href="../../d5/dd1/structBloomberg_1_1quantum_1_1ICoroContext.html" title="Exposes methods to manipulate the coroutine context.">ICoroContext</a>.  <a href="../../d8/db0/structBloomberg_1_1quantum_1_1IContextBase.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">interface &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d5/dd1/structBloomberg_1_1quantum_1_1ICoroContext.html">ICoroContext</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Exposes methods to manipulate the coroutine context.  <a href="../../d5/dd1/structBloomberg_1_1quantum_1_1ICoroContext.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">interface &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../de/d67/structBloomberg_1_1quantum_1_1ICoroContextBase.html">ICoroContextBase</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Exposes methods to manipulate the coroutine context, especially future wait methods.  <a href="../../de/d67/structBloomberg_1_1quantum_1_1ICoroContextBase.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">interface &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d6/daf/structBloomberg_1_1quantum_1_1ICoroFuture.html">ICoroFuture</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Exposes methods to access a coroutine-compatible future.  <a href="../../d6/daf/structBloomberg_1_1quantum_1_1ICoroFuture.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">interface &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d82/structBloomberg_1_1quantum_1_1ICoroFutureBase.html">ICoroFutureBase</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Exposes methods to access a coroutine-compatible future.  <a href="../../dc/d82/structBloomberg_1_1quantum_1_1ICoroFutureBase.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">interface &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d7/dc1/structBloomberg_1_1quantum_1_1ICoroPromise.html">ICoroPromise</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Exposes methods to access and manipulate a coroutine-compatible promise.  <a href="../../d7/dc1/structBloomberg_1_1quantum_1_1ICoroPromise.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">interface &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d3/d63/structBloomberg_1_1quantum_1_1ICoroSync.html">ICoroSync</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides an interface to facilitate 'implicit' coroutine yielding within other primitives such as mutexes and condition variables or to allow 'explicit' cooperative yielding by the user.  <a href="../../d3/d63/structBloomberg_1_1quantum_1_1ICoroSync.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/dd1/classBloomberg_1_1quantum_1_1IoQueue.html">IoQueue</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Thread queue for executing IO tasks.  <a href="../../d4/dd1/classBloomberg_1_1quantum_1_1IoQueue.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/d8b/classBloomberg_1_1quantum_1_1IoTask.html">IoTask</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Long running or blocking task running in the IO thread pool.  <a href="../../d4/d8b/classBloomberg_1_1quantum_1_1IoTask.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">interface &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/de4/structBloomberg_1_1quantum_1_1IPromiseBase.html">IPromiseBase</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Exposes methods to manipulate and access a promise.  <a href="../../df/de4/structBloomberg_1_1quantum_1_1IPromiseBase.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">interface &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/db0/structBloomberg_1_1quantum_1_1IQueue.html">IQueue</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface to a task queue. For internal use only.  <a href="../../d2/db0/structBloomberg_1_1quantum_1_1IQueue.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">interface &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d5/de7/structBloomberg_1_1quantum_1_1IQueueStatistics.html">IQueueStatistics</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface to access and manipulate a <a class="el" href="../../d1/d7b/classBloomberg_1_1quantum_1_1QueueStatistics.html" title="Provides various counters related to queues and task execution.">QueueStatistics</a> object.  <a href="../../d5/de7/structBloomberg_1_1quantum_1_1IQueueStatistics.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">interface &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/daf/structBloomberg_1_1quantum_1_1ITask.html">ITask</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface to a task. For internal use only.  <a href="../../df/daf/structBloomberg_1_1quantum_1_1ITask.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">interface &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d96/structBloomberg_1_1quantum_1_1ITaskAccessor.html">ITaskAccessor</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface to a task accessor. For internal use only.  <a href="../../d0/d96/structBloomberg_1_1quantum_1_1ITaskAccessor.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">interface &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/d03/structBloomberg_1_1quantum_1_1ITaskContinuation.html">ITaskContinuation</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface to a task continuation. For internal use only.  <a href="../../d4/d03/structBloomberg_1_1quantum_1_1ITaskContinuation.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">interface &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d9/ddb/structBloomberg_1_1quantum_1_1ITerminate.html">ITerminate</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Represents an object which can be terminated. This interface allows certain objects to be explicitly disposed of before their destructors are called.  <a href="../../d9/ddb/structBloomberg_1_1quantum_1_1ITerminate.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">interface &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/de3/structBloomberg_1_1quantum_1_1IThreadContext.html">IThreadContext</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Exposes methods to manipulate the thread context.  <a href="../../da/de3/structBloomberg_1_1quantum_1_1IThreadContext.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">interface &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d4d/structBloomberg_1_1quantum_1_1IThreadContextBase.html">IThreadContextBase</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Exposes methods to manipulate the thread context, especially future wait methods.  <a href="../../da/d4d/structBloomberg_1_1quantum_1_1IThreadContextBase.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d82/structBloomberg_1_1quantum_1_1IThreadFuture.html">IThreadFuture</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d2d/structBloomberg_1_1quantum_1_1IThreadFutureBase.html">IThreadFutureBase</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">interface &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/deb/structBloomberg_1_1quantum_1_1IThreadPromise.html">IThreadPromise</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Exposes methods to access and manipulate a non-coroutine promise (i.e. used in a thread)  <a href="../../da/deb/structBloomberg_1_1quantum_1_1IThreadPromise.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d7/d71/classBloomberg_1_1quantum_1_1Mutex.html">Mutex</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Coroutine-compatible implementation of a mutex.  <a href="../../d7/d71/classBloomberg_1_1quantum_1_1Mutex.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/d11/structBloomberg_1_1quantum_1_1NoStateException.html">NoStateException</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d15/classBloomberg_1_1quantum_1_1Promise.html">Promise</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Class representing a promised value.  <a href="../../d1/d15/classBloomberg_1_1quantum_1_1Promise.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/df4/structBloomberg_1_1quantum_1_1PromiseAlreadySatisfiedException.html">PromiseAlreadySatisfiedException</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/dc1/structBloomberg_1_1quantum_1_1PromiseNotSatisfiedException.html">PromiseNotSatisfiedException</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d7b/classBloomberg_1_1quantum_1_1QueueStatistics.html">QueueStatistics</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides various counters related to queues and task execution.  <a href="../../d1/d7b/classBloomberg_1_1quantum_1_1QueueStatistics.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/d25/structBloomberg_1_1quantum_1_1ReturnOf.html">ReturnOf</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d6/de7/structBloomberg_1_1quantum_1_1SequenceKeyData.html">SequenceKeyData</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../df/df6/classBloomberg_1_1quantum_1_1SequenceKeyStatistics.html">SequenceKeyStatistics</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Implementation of a statistics collection for a SequenceKey in <a class="el" href="../../d7/d45/classBloomberg_1_1quantum_1_1Sequencer.html" title="Implementation of a key-based task sequencing with quantum.">Sequencer</a>.  <a href="../../df/df6/classBloomberg_1_1quantum_1_1SequenceKeyStatistics.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d3/dc5/classBloomberg_1_1quantum_1_1SequenceKeyStatisticsWriter.html">SequenceKeyStatisticsWriter</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d7/d45/classBloomberg_1_1quantum_1_1Sequencer.html">Sequencer</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Implementation of a key-based task sequencing with quantum.  <a href="../../d7/d45/classBloomberg_1_1quantum_1_1Sequencer.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/df2/classBloomberg_1_1quantum_1_1SequencerConfiguration.html">SequencerConfiguration</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Implementation of a configuration class for <a class="el" href="../../d7/d45/classBloomberg_1_1quantum_1_1Sequencer.html" title="Implementation of a key-based task sequencing with quantum.">Sequencer</a>.  <a href="../../dd/df2/classBloomberg_1_1quantum_1_1SequencerConfiguration.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/df0/classBloomberg_1_1quantum_1_1SharedState.html">SharedState</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Shared state used between a <a class="el" href="../../d1/d15/classBloomberg_1_1quantum_1_1Promise.html" title="Class representing a promised value.">Promise</a> and a <a class="el" href="../../dc/d14/classBloomberg_1_1quantum_1_1Future.html" title="Class representing a promised future. Can only be instantiated via a Promise object.">Future</a> to exchange values.  <a href="../../d2/df0/classBloomberg_1_1quantum_1_1SharedState.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../de/df2/classBloomberg_1_1quantum_1_1SharedState_3_01Buffer_3_01T_01_4_01_4.html">SharedState&lt; Buffer&lt; T &gt; &gt;</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/d05/classBloomberg_1_1quantum_1_1SpinLock.html">SpinLock</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Coroutine-compatible spinlock. Used internally for mutexes since threads running coroutines cannot block.  <a href="../../d1/d05/classBloomberg_1_1quantum_1_1SpinLock.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d75/structBloomberg_1_1quantum_1_1StackAllocator.html">StackAllocator</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides a stack-based object pool to the underlying <a class="el" href="../../d7/dd7/structBloomberg_1_1quantum_1_1ContiguousPoolManager.html" title="Provides fast (quasi zero-time) in-place allocation for STL containers. Objects are allocated from a ...">ContiguousPoolManager</a>. The default buffer size is 1000.  <a href="../../d0/d75/structBloomberg_1_1quantum_1_1StackAllocator.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d7/d9d/structBloomberg_1_1quantum_1_1StackTraits.html">StackTraits</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allows application-wide overrides for the coroutine stack traits which are used internally by boost::coroutines2.  <a href="../../d7/d9d/structBloomberg_1_1quantum_1_1StackTraits.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/df4/structBloomberg_1_1quantum_1_1StackTraitsProxy.html">StackTraitsProxy</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d7/dd7/structBloomberg_1_1quantum_1_1StlAllocator.html">StlAllocator</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d0/d90/classBloomberg_1_1quantum_1_1Task.html">Task</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Runnable object representing a coroutine.  <a href="../../d0/d90/classBloomberg_1_1quantum_1_1Task.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/d06/classBloomberg_1_1quantum_1_1TaskQueue.html">TaskQueue</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Thread queue for running coroutines.  <a href="../../d8/d06/classBloomberg_1_1quantum_1_1TaskQueue.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../de/de9/structBloomberg_1_1quantum_1_1ThreadContextTag.html">ThreadContextTag</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/daf/structBloomberg_1_1quantum_1_1ThreadTraits.html">ThreadTraits</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allows application-wide settings for the various thread settings used by Quantum.  <a href="../../d8/daf/structBloomberg_1_1quantum_1_1ThreadTraits.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d6/d86/structBloomberg_1_1quantum_1_1Traits.html">Traits</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Contains definitions for various traits used by this library. For internal use only.  <a href="../../d6/d86/structBloomberg_1_1quantum_1_1Traits.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d1/db1/structBloomberg_1_1quantum_1_1Util.html">Util</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Utility to bind a user callable function unto a coroutine or an IO task.  <a href="../../d1/db1/structBloomberg_1_1quantum_1_1Util.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d4a/structBloomberg_1_1quantum_1_1YieldingThreadDuration.html">YieldingThreadDuration</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">This class provides the same functionality as a coroutine yield when called from a thread context.  <a href="../../dd/d4a/structBloomberg_1_1quantum_1_1YieldingThreadDuration.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:a4c489223386c94e8f0841e2688cca80e"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a4c489223386c94e8f0841e2688cca80e">ContextAllocator</a> = <a class="el" href="../../d0/d75/structBloomberg_1_1quantum_1_1StackAllocator.html">StackAllocator</a>&lt; <a class="el" href="../../d8/df7/classBloomberg_1_1quantum_1_1Context.html">Context</a>&lt; int &gt;, __QUANTUM_CONTEXT_ALLOC_SIZE &gt;</td></tr>
<tr class="separator:a4c489223386c94e8f0841e2688cca80e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a17ad7c3baf65051199af60f377a00fa0"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a17ad7c3baf65051199af60f377a00fa0">FutureAllocator</a> = <a class="el" href="../../d0/d75/structBloomberg_1_1quantum_1_1StackAllocator.html">StackAllocator</a>&lt; <a class="el" href="../../dc/d14/classBloomberg_1_1quantum_1_1Future.html">Future</a>&lt; int &gt;, __QUANTUM_FUTURE_ALLOC_SIZE &gt;</td></tr>
<tr class="separator:a17ad7c3baf65051199af60f377a00fa0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a739e7eaec89907476af7a3be87950b9b"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a739e7eaec89907476af7a3be87950b9b">IoTaskAllocator</a> = <a class="el" href="../../d0/d75/structBloomberg_1_1quantum_1_1StackAllocator.html">StackAllocator</a>&lt; <a class="el" href="../../d4/d8b/classBloomberg_1_1quantum_1_1IoTask.html">IoTask</a>, __QUANTUM_IO_TASK_ALLOC_SIZE &gt;</td></tr>
<tr class="separator:a739e7eaec89907476af7a3be87950b9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1a2e0d923f82da056e0f6be6b599491d"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a1a2e0d923f82da056e0f6be6b599491d">PromiseAllocator</a> = <a class="el" href="../../d0/d75/structBloomberg_1_1quantum_1_1StackAllocator.html">StackAllocator</a>&lt; <a class="el" href="../../d1/d15/classBloomberg_1_1quantum_1_1Promise.html">Promise</a>&lt; int &gt;, __QUANTUM_PROMISE_ALLOC_SIZE &gt;</td></tr>
<tr class="separator:a1a2e0d923f82da056e0f6be6b599491d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac92fc09d9f3ed4dbc0c98347d66c6f8f"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#ac92fc09d9f3ed4dbc0c98347d66c6f8f">TaskAllocator</a> = <a class="el" href="../../d0/d75/structBloomberg_1_1quantum_1_1StackAllocator.html">StackAllocator</a>&lt; <a class="el" href="../../d0/d90/classBloomberg_1_1quantum_1_1Task.html">Task</a>, __QUANTUM_TASK_ALLOC_SIZE &gt;</td></tr>
<tr class="separator:ac92fc09d9f3ed4dbc0c98347d66c6f8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aec4640deaf69f6f17764e6d9cada2b27"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#aec4640deaf69f6f17764e6d9cada2b27">IContextBasePtr</a> = <a class="el" href="../../d8/db0/structBloomberg_1_1quantum_1_1IContextBase.html#ac92e5d294479f777fd01f5621e4f8db9">IContextBase::Ptr</a></td></tr>
<tr class="separator:aec4640deaf69f6f17764e6d9cada2b27"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a15cc22a3e0070643a8cfefe6b83d3107"><td class="memTemplParams" colspan="2">template&lt;class RET &gt; </td></tr>
<tr class="memitem:a15cc22a3e0070643a8cfefe6b83d3107"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a15cc22a3e0070643a8cfefe6b83d3107">CoroContext</a> = <a class="el" href="../../d5/dd1/structBloomberg_1_1quantum_1_1ICoroContext.html">ICoroContext</a>&lt; RET &gt;</td></tr>
<tr class="separator:a15cc22a3e0070643a8cfefe6b83d3107"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8cf6f8fd7d169988428556468b333fe1"><td class="memTemplParams" colspan="2">template&lt;class RET &gt; </td></tr>
<tr class="memitem:a8cf6f8fd7d169988428556468b333fe1"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a8cf6f8fd7d169988428556468b333fe1">CoroContextPtr</a> = typename <a class="el" href="../../d5/dd1/structBloomberg_1_1quantum_1_1ICoroContext.html">ICoroContext</a>&lt; RET &gt;::Ptr</td></tr>
<tr class="separator:a8cf6f8fd7d169988428556468b333fe1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab01325c808be994b5ce507dab2de2161"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#ab01325c808be994b5ce507dab2de2161">ICoroContextBasePtr</a> = <a class="el" href="../../de/d67/structBloomberg_1_1quantum_1_1ICoroContextBase.html#aa480ed235fb4eddf594fe5731c54ccab">ICoroContextBase::Ptr</a></td></tr>
<tr class="separator:ab01325c808be994b5ce507dab2de2161"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abbf7b4213a463ceb6b795332500d45ab"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:abbf7b4213a463ceb6b795332500d45ab"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#abbf7b4213a463ceb6b795332500d45ab">CoroFuture</a> = <a class="el" href="../../d6/daf/structBloomberg_1_1quantum_1_1ICoroFuture.html">ICoroFuture</a>&lt; T &gt;</td></tr>
<tr class="separator:abbf7b4213a463ceb6b795332500d45ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a294434a555befbec5230f5ff03944878"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a294434a555befbec5230f5ff03944878"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a294434a555befbec5230f5ff03944878">CoroFuturePtr</a> = typename <a class="el" href="../../d6/daf/structBloomberg_1_1quantum_1_1ICoroFuture.html">ICoroFuture</a>&lt; T &gt;::Ptr</td></tr>
<tr class="separator:a294434a555befbec5230f5ff03944878"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a915d037edeb7f5e84f69f5a518945576"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a915d037edeb7f5e84f69f5a518945576">ICoroFutureBasePtr</a> = <a class="el" href="../../dc/d82/structBloomberg_1_1quantum_1_1ICoroFutureBase.html#a8fdb9918c64ffca16815929757df77fe">ICoroFutureBase::Ptr</a></td></tr>
<tr class="separator:a915d037edeb7f5e84f69f5a518945576"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a05313fffd3e95a51956149b9c486083c"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a05313fffd3e95a51956149b9c486083c"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a05313fffd3e95a51956149b9c486083c">CoroPromise</a> = <a class="el" href="../../d7/dc1/structBloomberg_1_1quantum_1_1ICoroPromise.html">ICoroPromise</a>&lt; <a class="el" href="../../d1/d15/classBloomberg_1_1quantum_1_1Promise.html">Promise</a>, T &gt;</td></tr>
<tr class="separator:a05313fffd3e95a51956149b9c486083c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d07560d1a211eb6a796c2aae69e00cb"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a0d07560d1a211eb6a796c2aae69e00cb"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a0d07560d1a211eb6a796c2aae69e00cb">CoroPromisePtr</a> = typename <a class="el" href="../../d7/dc1/structBloomberg_1_1quantum_1_1ICoroPromise.html">ICoroPromise</a>&lt; <a class="el" href="../../d1/d15/classBloomberg_1_1quantum_1_1Promise.html">Promise</a>, T &gt;::Ptr</td></tr>
<tr class="separator:a0d07560d1a211eb6a796c2aae69e00cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aece2b88752b9d3cc005357e06dbd4851"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#aece2b88752b9d3cc005357e06dbd4851">ICoroSyncPtr</a> = <a class="el" href="../../d3/d63/structBloomberg_1_1quantum_1_1ICoroSync.html#a109b2c4b7d70d53d48bb640a9d849b29">ICoroSync::Ptr</a></td></tr>
<tr class="separator:aece2b88752b9d3cc005357e06dbd4851"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad3876c58a4fac983a29e2d3aa1712692"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#ad3876c58a4fac983a29e2d3aa1712692">IPromiseBasePtr</a> = <a class="el" href="../../df/de4/structBloomberg_1_1quantum_1_1IPromiseBase.html#a50506be87412ef38d4bd954ff6285b3e">IPromiseBase::Ptr</a></td></tr>
<tr class="separator:ad3876c58a4fac983a29e2d3aa1712692"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d4b3ca717b7edbb5e52879829cb42ad"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a7d4b3ca717b7edbb5e52879829cb42ad">IQueuePtr</a> = <a class="el" href="../../d2/db0/structBloomberg_1_1quantum_1_1IQueue.html#ab4c4a3db733a93ad451c9dc7ffe62824">IQueue::Ptr</a></td></tr>
<tr class="separator:a7d4b3ca717b7edbb5e52879829cb42ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8a48c732495dfe1af2d8bf0e3febe94f"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a8a48c732495dfe1af2d8bf0e3febe94f">QueueListAllocator</a> = <a class="el" href="../../d0/d75/structBloomberg_1_1quantum_1_1StackAllocator.html">StackAllocator</a>&lt; <a class="el" href="../../df/daf/structBloomberg_1_1quantum_1_1ITask.html#a6c5b8216547b11f3f0e0e6bc7d20956d">ITask::Ptr</a>, __QUANTUM_QUEUE_LIST_ALLOC_SIZE &gt;</td></tr>
<tr class="separator:a8a48c732495dfe1af2d8bf0e3febe94f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a639a8b51def27ff64ee7622a39775d67"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a639a8b51def27ff64ee7622a39775d67">ITaskPtr</a> = <a class="el" href="../../df/daf/structBloomberg_1_1quantum_1_1ITask.html#a6c5b8216547b11f3f0e0e6bc7d20956d">ITask::Ptr</a></td></tr>
<tr class="separator:a639a8b51def27ff64ee7622a39775d67"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a07a1e416f4f3ce3b8999b8690d89a6e7"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a07a1e416f4f3ce3b8999b8690d89a6e7">ITaskWeakPtr</a> = <a class="el" href="../../df/daf/structBloomberg_1_1quantum_1_1ITask.html#aae43ecce0c2cdbdfa677d9d0846f1e48">ITask::WeakPtr</a></td></tr>
<tr class="separator:a07a1e416f4f3ce3b8999b8690d89a6e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5045db00eb0e4187faf5ecfbcaefd461"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a5045db00eb0e4187faf5ecfbcaefd461">ITaskAccessorPtr</a> = <a class="el" href="../../d0/d96/structBloomberg_1_1quantum_1_1ITaskAccessor.html#a77cb6ef586bd4e2ee6ae9d3efabf5be9">ITaskAccessor::Ptr</a></td></tr>
<tr class="separator:a5045db00eb0e4187faf5ecfbcaefd461"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0c45225a2550ccfe74897989f0d60231"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a0c45225a2550ccfe74897989f0d60231">ITaskContinuationPtr</a> = <a class="el" href="../../d4/d03/structBloomberg_1_1quantum_1_1ITaskContinuation.html#ad476dfb42152a7407ca71ad9a24941ac">ITaskContinuation::Ptr</a></td></tr>
<tr class="separator:a0c45225a2550ccfe74897989f0d60231"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a640696efd612e5588690507d814af1a9"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a640696efd612e5588690507d814af1a9">ITaskContinuationWeakPtr</a> = <a class="el" href="../../d4/d03/structBloomberg_1_1quantum_1_1ITaskContinuation.html#a7f8bd7cd7729c363517994627df51a09">ITaskContinuation::WeakPtr</a></td></tr>
<tr class="separator:a640696efd612e5588690507d814af1a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa9da8335ae6292074d0ccaf31b85bf35"><td class="memTemplParams" colspan="2">template&lt;class RET &gt; </td></tr>
<tr class="memitem:aa9da8335ae6292074d0ccaf31b85bf35"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#aa9da8335ae6292074d0ccaf31b85bf35">ThreadContext</a> = <a class="el" href="../../da/de3/structBloomberg_1_1quantum_1_1IThreadContext.html">IThreadContext</a>&lt; RET &gt;</td></tr>
<tr class="separator:aa9da8335ae6292074d0ccaf31b85bf35"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa26dcdfb6c3930c1cd2b4000d8711f4c"><td class="memTemplParams" colspan="2">template&lt;class RET &gt; </td></tr>
<tr class="memitem:aa26dcdfb6c3930c1cd2b4000d8711f4c"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#aa26dcdfb6c3930c1cd2b4000d8711f4c">ThreadContextPtr</a> = typename <a class="el" href="../../da/de3/structBloomberg_1_1quantum_1_1IThreadContext.html">IThreadContext</a>&lt; RET &gt;::Ptr</td></tr>
<tr class="separator:aa26dcdfb6c3930c1cd2b4000d8711f4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a43309e2c15f17b8d7accac5ba695f1e3"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a43309e2c15f17b8d7accac5ba695f1e3">IThreadContextBasePtr</a> = <a class="el" href="../../da/d4d/structBloomberg_1_1quantum_1_1IThreadContextBase.html#a95643a462eecd0836f9fd348703f77a2">IThreadContextBase::Ptr</a></td></tr>
<tr class="separator:a43309e2c15f17b8d7accac5ba695f1e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5fb1fad9d98cf52df3131ea26d85fa99"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a5fb1fad9d98cf52df3131ea26d85fa99"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a5fb1fad9d98cf52df3131ea26d85fa99">ThreadFuture</a> = <a class="el" href="../../dc/d82/structBloomberg_1_1quantum_1_1IThreadFuture.html">IThreadFuture</a>&lt; T &gt;</td></tr>
<tr class="separator:a5fb1fad9d98cf52df3131ea26d85fa99"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a742e0d39218b80ae60f30d47ae58bbc9"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a742e0d39218b80ae60f30d47ae58bbc9"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a742e0d39218b80ae60f30d47ae58bbc9">ThreadFuturePtr</a> = typename <a class="el" href="../../dc/d82/structBloomberg_1_1quantum_1_1IThreadFuture.html">IThreadFuture</a>&lt; T &gt;::Ptr</td></tr>
<tr class="separator:a742e0d39218b80ae60f30d47ae58bbc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa1df32c3cb7ac67a6ebeb27e77fd1a71"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#aa1df32c3cb7ac67a6ebeb27e77fd1a71">IThreadFutureBasePtr</a> = <a class="el" href="../../d1/d2d/structBloomberg_1_1quantum_1_1IThreadFutureBase.html#a7a5e5adf9e104bef3f570aace79ecf5c">IThreadFutureBase::Ptr</a></td></tr>
<tr class="separator:aa1df32c3cb7ac67a6ebeb27e77fd1a71"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ade87d49e44470f3d0633488c46902d80"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:ade87d49e44470f3d0633488c46902d80"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#ade87d49e44470f3d0633488c46902d80">ThreadPromise</a> = <a class="el" href="../../da/deb/structBloomberg_1_1quantum_1_1IThreadPromise.html">IThreadPromise</a>&lt; <a class="el" href="../../d1/d15/classBloomberg_1_1quantum_1_1Promise.html">Promise</a>, T &gt;</td></tr>
<tr class="separator:ade87d49e44470f3d0633488c46902d80"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a29fb505e41c528b77405836d345259c6"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a29fb505e41c528b77405836d345259c6"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a29fb505e41c528b77405836d345259c6">ThreadPromisePtr</a> = typename <a class="el" href="../../da/deb/structBloomberg_1_1quantum_1_1IThreadPromise.html">IThreadPromise</a>&lt; <a class="el" href="../../d1/d15/classBloomberg_1_1quantum_1_1Promise.html">Promise</a>, T &gt;::Ptr</td></tr>
<tr class="separator:a29fb505e41c528b77405836d345259c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a97424bb463a112d6dd7606741b20e484"><td class="memTemplParams" colspan="2">template&lt;class RET &gt; </td></tr>
<tr class="memitem:a97424bb463a112d6dd7606741b20e484"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a97424bb463a112d6dd7606741b20e484">ContextPtr</a> = typename <a class="el" href="../../d8/df7/classBloomberg_1_1quantum_1_1Context.html">Context</a>&lt; RET &gt;::Ptr</td></tr>
<tr class="separator:a97424bb463a112d6dd7606741b20e484"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a758f35e0635ed43756e7992c606e8333"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a758f35e0635ed43756e7992c606e8333">TaskDispatcher</a> = <a class="el" href="../../d0/da5/classBloomberg_1_1quantum_1_1Dispatcher.html">Dispatcher</a></td></tr>
<tr class="separator:a758f35e0635ed43756e7992c606e8333"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a016f2e761462e67f027d3a2bcf6e1c67"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a016f2e761462e67f027d3a2bcf6e1c67"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a016f2e761462e67f027d3a2bcf6e1c67">FuturePtr</a> = typename <a class="el" href="../../dc/d14/classBloomberg_1_1quantum_1_1Future.html">Future</a>&lt; T &gt;::Ptr</td></tr>
<tr class="separator:a016f2e761462e67f027d3a2bcf6e1c67"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4f9e9e3aaf6332795085344b060d33e9"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a4f9e9e3aaf6332795085344b060d33e9">IoTaskPtr</a> = <a class="el" href="../../d4/d8b/classBloomberg_1_1quantum_1_1IoTask.html#af433efa37f8b3dffd03e3aa614acc9f5">IoTask::Ptr</a></td></tr>
<tr class="separator:a4f9e9e3aaf6332795085344b060d33e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab61126f017510de790ef8c58d68b107c"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#ab61126f017510de790ef8c58d68b107c">IoTaskWeakPtr</a> = <a class="el" href="../../d4/d8b/classBloomberg_1_1quantum_1_1IoTask.html#ab48b088280ea26954a8bd9f789988dc4">IoTask::WeakPtr</a></td></tr>
<tr class="separator:ab61126f017510de790ef8c58d68b107c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afdd6d891441a24d705b1c015beb9ad3c"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:afdd6d891441a24d705b1c015beb9ad3c"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#afdd6d891441a24d705b1c015beb9ad3c">PromisePtr</a> = typename <a class="el" href="../../d1/d15/classBloomberg_1_1quantum_1_1Promise.html">Promise</a>&lt; T &gt;::Ptr</td></tr>
<tr class="separator:afdd6d891441a24d705b1c015beb9ad3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5f91f05820a064e723e10167648d8342"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a5f91f05820a064e723e10167648d8342">TaskPtr</a> = <a class="el" href="../../d0/d90/classBloomberg_1_1quantum_1_1Task.html#a2d6e0bcef2e9f07d966c9734f92f4969">Task::Ptr</a></td></tr>
<tr class="separator:a5f91f05820a064e723e10167648d8342"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa61aef64edf4108e212ca1660461d9cf"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#aa61aef64edf4108e212ca1660461d9cf">TaskWeakPtr</a> = <a class="el" href="../../d0/d90/classBloomberg_1_1quantum_1_1Task.html#a5a1f2d26f8f0edb3ac2ff31e36e497ca">Task::WeakPtr</a></td></tr>
<tr class="separator:aa61aef64edf4108e212ca1660461d9cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0322110282aa0ded0fb7e7eefb29c9d0"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a0322110282aa0ded0fb7e7eefb29c9d0">CoroStackAllocator</a> = <a class="el" href="../../de/d0e/structBloomberg_1_1quantum_1_1CoroutinePoolAllocatorProxy.html">CoroutinePoolAllocatorProxy</a>&lt; <a class="el" href="../../d4/df4/structBloomberg_1_1quantum_1_1StackTraitsProxy.html">StackTraitsProxy</a> &gt;</td></tr>
<tr class="separator:a0322110282aa0ded0fb7e7eefb29c9d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6a7355c34dce8bf032f8e79333d511c7"><td class="memTemplParams" colspan="2">template&lt;class T , class V &gt; </td></tr>
<tr class="memitem:a6a7355c34dce8bf032f8e79333d511c7"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a6a7355c34dce8bf032f8e79333d511c7">BufferType</a> = std::enable_if_t&lt; <a class="el" href="../../da/d88/structBloomberg_1_1quantum_1_1Traits_1_1IsBuffer.html">Traits::IsBuffer</a>&lt; T &gt;::value &amp;&amp;!std::is_same&lt; std::decay_t&lt; V &gt;, T &gt;::value &amp;&amp;std::is_convertible&lt; std::decay_t&lt; V &gt;, typename <a class="el" href="../../da/d88/structBloomberg_1_1quantum_1_1Traits_1_1IsBuffer.html">Traits::IsBuffer</a>&lt; T &gt;::Type &gt;::value &gt;</td></tr>
<tr class="separator:a6a7355c34dce8bf032f8e79333d511c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7dfd30e4d4fe997b548ac41bad9d802d"><td class="memTemplParams" colspan="2">template&lt;class T , class V &gt; </td></tr>
<tr class="memitem:a7dfd30e4d4fe997b548ac41bad9d802d"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a7dfd30e4d4fe997b548ac41bad9d802d">NonBufferType</a> = std::enable_if_t&lt;!<a class="el" href="../../da/d88/structBloomberg_1_1quantum_1_1Traits_1_1IsBuffer.html">Traits::IsBuffer</a>&lt; T &gt;::value &amp;&amp;std::is_convertible&lt; std::decay_t&lt; V &gt;, T &gt;::value &gt;</td></tr>
<tr class="separator:a7dfd30e4d4fe997b548ac41bad9d802d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3e3f89ff8206c0514976b423cb7199cd"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a3e3f89ff8206c0514976b423cb7199cd"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a3e3f89ff8206c0514976b423cb7199cd">BufferRetType</a> = std::enable_if_t&lt; <a class="el" href="../../da/d88/structBloomberg_1_1quantum_1_1Traits_1_1IsBuffer.html">Traits::IsBuffer</a>&lt; T &gt;::value, typename <a class="el" href="../../da/d88/structBloomberg_1_1quantum_1_1Traits_1_1IsBuffer.html">Traits::IsBuffer</a>&lt; T &gt;::Type &gt;</td></tr>
<tr class="separator:a3e3f89ff8206c0514976b423cb7199cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a7dd2b5f475bbecb11bfa87fcc251c5"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a0a7dd2b5f475bbecb11bfa87fcc251c5"><td class="memTemplItemLeft" align="right" valign="top">using&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a0a7dd2b5f475bbecb11bfa87fcc251c5">NonBufferRetType</a> = std::enable_if_t&lt;!<a class="el" href="../../da/d88/structBloomberg_1_1quantum_1_1Traits_1_1IsBuffer.html">Traits::IsBuffer</a>&lt; T &gt;::value, typename <a class="el" href="../../da/d88/structBloomberg_1_1quantum_1_1Traits_1_1IsBuffer.html">Traits::IsBuffer</a>&lt; T &gt;::Type &gt;</td></tr>
<tr class="separator:a0a7dd2b5f475bbecb11bfa87fcc251c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4861ce4c0d0ece44adc70e68ff02131"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#ab4861ce4c0d0ece44adc70e68ff02131">YieldingThread</a> = <a class="el" href="../../dd/d4a/structBloomberg_1_1quantum_1_1YieldingThreadDuration.html">YieldingThreadDuration</a>&lt; std::chrono::microseconds &gt;</td></tr>
<tr class="separator:ab4861ce4c0d0ece44adc70e68ff02131"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a292c501146e1903614156e96d5c463a7"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a292c501146e1903614156e96d5c463a7">StatsPtr</a> = std::shared_ptr&lt; <a class="el" href="../../d3/dc5/classBloomberg_1_1quantum_1_1SequenceKeyStatisticsWriter.html">SequenceKeyStatisticsWriter</a> &gt;</td></tr>
<tr class="separator:a292c501146e1903614156e96d5c463a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:a9322decc3c78f19a6262e572bd276b5f"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a9322decc3c78f19a6262e572bd276b5f">BufferStatus</a> { <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a9322decc3c78f19a6262e572bd276b5fa7cb909f0a99503e1467332b96cd96f6a">BufferStatus::DataReceived</a>, 
<a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a9322decc3c78f19a6262e572bd276b5faac199d4dcab428037a9c299011630100">BufferStatus::DataPosted</a>, 
<a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a9322decc3c78f19a6262e572bd276b5fad14d1a5e6629f19700c4a31866f8fd63">BufferStatus::DataPending</a>, 
<a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a9322decc3c78f19a6262e572bd276b5fa03f4a47830f97377a35321051685071e">BufferStatus::Closed</a>
 }</td></tr>
<tr class="memdesc:a9322decc3c78f19a6262e572bd276b5f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Defines the result of the operation on the buffer object.  <a href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a9322decc3c78f19a6262e572bd276b5f">More...</a><br /></td></tr>
<tr class="separator:a9322decc3c78f19a6262e572bd276b5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aae5974140a54463c3c55040f00e6f70b"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#aae5974140a54463c3c55040f00e6f70b">FutureState</a> { <br />
&#160;&#160;<a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#aae5974140a54463c3c55040f00e6f70ba9f313dd07b53e94bc9b9b31be09f2079">FutureState::PromiseNotSatisfied</a> = 1, 
<a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#aae5974140a54463c3c55040f00e6f70ba26bfa0eb1b346b9dd4ec67d295ad14a6">FutureState::PromiseAlreadySatisfied</a>, 
<a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#aae5974140a54463c3c55040f00e6f70ba30a0125c796cabdb8c4b0073aff78888">FutureState::BrokenPromise</a>, 
<a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#aae5974140a54463c3c55040f00e6f70baf89cf46ee0df3455e721aead6e7591fa">FutureState::FutureAlreadyRetrieved</a>, 
<br />
&#160;&#160;<a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#aae5974140a54463c3c55040f00e6f70baabe824ed9425fdb3db384cc081c7b41c">FutureState::NoState</a>, 
<a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#aae5974140a54463c3c55040f00e6f70baaa217200c8ae10d76e314216bc4f29ab">FutureState::BufferingData</a>, 
<a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#aae5974140a54463c3c55040f00e6f70ba444aecf3cf9ff4046b30c4d603967093">FutureState::BufferClosed</a>
<br />
 }</td></tr>
<tr class="memdesc:aae5974140a54463c3c55040f00e6f70b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Represents the internal state of a future/promise pair. Modeled after std::future_errc.  <a href="../../dc/d48/namespaceBloomberg_1_1quantum.html#aae5974140a54463c3c55040f00e6f70b">More...</a><br /></td></tr>
<tr class="separator:aae5974140a54463c3c55040f00e6f70b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a0ddddf38209f4add2a3784f4e7c3d425"><td class="memTemplParams" colspan="2">template&lt;typename FUNC , typename ... ARGS&gt; </td></tr>
<tr class="memitem:a0ddddf38209f4add2a3784f4e7c3d425"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Capture.html">Capture</a>&lt; FUNC, ARGS... &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a0ddddf38209f4add2a3784f4e7c3d425">makeCapture</a> (FUNC &amp;&amp;func, ARGS &amp;&amp;... args)</td></tr>
<tr class="separator:a0ddddf38209f4add2a3784f4e7c3d425"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75c5cdadd35fd61b43b04b55d718a927"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../d1/d7b/classBloomberg_1_1quantum_1_1QueueStatistics.html">QueueStatistics</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a75c5cdadd35fd61b43b04b55d718a927">operator+</a> (<a class="el" href="../../d1/d7b/classBloomberg_1_1quantum_1_1QueueStatistics.html">QueueStatistics</a> lhs, const <a class="el" href="../../d5/de7/structBloomberg_1_1quantum_1_1IQueueStatistics.html">IQueueStatistics</a> &amp;rhs)</td></tr>
<tr class="separator:a75c5cdadd35fd61b43b04b55d718a927"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af910e15f8a8d99a2c848a9f424835f6a"><td class="memItemLeft" align="right" valign="top">std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#af910e15f8a8d99a2c848a9f424835f6a">operator&lt;&lt;</a> (std::ostream &amp;out, const <a class="el" href="../../d5/de7/structBloomberg_1_1quantum_1_1IQueueStatistics.html">IQueueStatistics</a> &amp;stats)</td></tr>
<tr class="memdesc:af910e15f8a8d99a2c848a9f424835f6a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Overloads stream operator for <a class="el" href="../../d5/de7/structBloomberg_1_1quantum_1_1IQueueStatistics.html" title="Interface to access and manipulate a QueueStatistics object.">IQueueStatistics</a> object.  <a href="#af910e15f8a8d99a2c848a9f424835f6a">More...</a><br /></td></tr>
<tr class="separator:af910e15f8a8d99a2c848a9f424835f6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f62a3c39e5b68f1fe7cb27d133ccb16"><td class="memTemplParams" colspan="2">template&lt;typename RET , typename FUNC , typename... ARGS, size_t... I, typename... T&gt; </td></tr>
<tr class="memitem:a3f62a3c39e5b68f1fe7cb27d133ccb16"><td class="memTemplItemLeft" align="right" valign="top">RET&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a3f62a3c39e5b68f1fe7cb27d133ccb16">apply_impl</a> (FUNC &amp;&amp;func, std::tuple&lt; ARGS... &gt; &amp;&amp;tuple, std::index_sequence&lt; I... &gt;, T &amp;&amp;...t)</td></tr>
<tr class="separator:a3f62a3c39e5b68f1fe7cb27d133ccb16"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aef8beaf54de48000e2c6332e0f9d6d18"><td class="memTemplParams" colspan="2">template&lt;typename RET , typename FUNC , typename... ARGS, typename... T&gt; </td></tr>
<tr class="memitem:aef8beaf54de48000e2c6332e0f9d6d18"><td class="memTemplItemLeft" align="right" valign="top">RET&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#aef8beaf54de48000e2c6332e0f9d6d18">apply</a> (FUNC &amp;&amp;func, std::tuple&lt; ARGS... &gt; &amp;&amp;tuple, T &amp;&amp;...t)</td></tr>
<tr class="separator:aef8beaf54de48000e2c6332e0f9d6d18"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4206774a667bbdbc8c8cc1fd905e051c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a4206774a667bbdbc8c8cc1fd905e051c">ThrowFutureException</a> (<a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#aae5974140a54463c3c55040f00e6f70b">FutureState</a> state)</td></tr>
<tr class="separator:a4206774a667bbdbc8c8cc1fd905e051c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0ec34a6d5d7612a13176ed8b1d7aa01b"><td class="memTemplParams" colspan="2">template&lt;typename RET , typename CAPTURE &gt; </td></tr>
<tr class="memitem:a0ec34a6d5d7612a13176ed8b1d7aa01b"><td class="memTemplItemLeft" align="right" valign="top">int&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a0ec34a6d5d7612a13176ed8b1d7aa01b">bindCoro</a> (<a class="el" href="../../d6/d86/structBloomberg_1_1quantum_1_1Traits.html#a2730a4e218f1af1a4e3f64e80ed7bbfc">Traits::Yield</a> &amp;yield, std::shared_ptr&lt; <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a15cc22a3e0070643a8cfefe6b83d3107">CoroContext</a>&lt; RET &gt;&gt; ctx, CAPTURE &amp;&amp;capture)</td></tr>
<tr class="separator:a0ec34a6d5d7612a13176ed8b1d7aa01b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abcada63b5e5ccd40f931191585997228"><td class="memTemplParams" colspan="2">template&lt;typename RET , typename CAPTURE &gt; </td></tr>
<tr class="memitem:abcada63b5e5ccd40f931191585997228"><td class="memTemplItemLeft" align="right" valign="top">int&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#abcada63b5e5ccd40f931191585997228">bindIo</a> (std::shared_ptr&lt; <a class="el" href="../../d1/d15/classBloomberg_1_1quantum_1_1Promise.html">Promise</a>&lt; RET &gt;&gt; promise, CAPTURE &amp;&amp;capture)</td></tr>
<tr class="separator:abcada63b5e5ccd40f931191585997228"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Typedef Documentation</h2>
<a id="a3e3f89ff8206c0514976b423cb7199cd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3e3f89ff8206c0514976b423cb7199cd">&#9670;&nbsp;</a></span>BufferRetType</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a3e3f89ff8206c0514976b423cb7199cd">Bloomberg::quantum::BufferRetType</a> = typedef std::enable_if_t&lt;<a class="el" href="../../da/d88/structBloomberg_1_1quantum_1_1Traits_1_1IsBuffer.html">Traits::IsBuffer</a>&lt;T&gt;::value, typename <a class="el" href="../../da/d88/structBloomberg_1_1quantum_1_1Traits_1_1IsBuffer.html">Traits::IsBuffer</a>&lt;T&gt;::Type&gt;</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a6a7355c34dce8bf032f8e79333d511c7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6a7355c34dce8bf032f8e79333d511c7">&#9670;&nbsp;</a></span>BufferType</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T , class V &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a6a7355c34dce8bf032f8e79333d511c7">Bloomberg::quantum::BufferType</a> = typedef std::enable_if_t&lt;<a class="el" href="../../da/d88/structBloomberg_1_1quantum_1_1Traits_1_1IsBuffer.html">Traits::IsBuffer</a>&lt;T&gt;::value &amp;&amp; !std::is_same&lt;std::decay_t&lt;V&gt;,T&gt;::value &amp;&amp; std::is_convertible&lt;std::decay_t&lt;V&gt;, typename <a class="el" href="../../da/d88/structBloomberg_1_1quantum_1_1Traits_1_1IsBuffer.html">Traits::IsBuffer</a>&lt;T&gt;::Type&gt;::value&gt;</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a4c489223386c94e8f0841e2688cca80e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4c489223386c94e8f0841e2688cca80e">&#9670;&nbsp;</a></span>ContextAllocator</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a4c489223386c94e8f0841e2688cca80e">Bloomberg::quantum::ContextAllocator</a> = typedef <a class="el" href="../../d0/d75/structBloomberg_1_1quantum_1_1StackAllocator.html">StackAllocator</a>&lt;<a class="el" href="../../d8/df7/classBloomberg_1_1quantum_1_1Context.html">Context</a>&lt;int&gt;, __QUANTUM_CONTEXT_ALLOC_SIZE&gt;</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a97424bb463a112d6dd7606741b20e484"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a97424bb463a112d6dd7606741b20e484">&#9670;&nbsp;</a></span>ContextPtr</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class RET &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a97424bb463a112d6dd7606741b20e484">Bloomberg::quantum::ContextPtr</a> = typedef typename <a class="el" href="../../d8/df7/classBloomberg_1_1quantum_1_1Context.html">Context</a>&lt;RET&gt;::Ptr</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a15cc22a3e0070643a8cfefe6b83d3107"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a15cc22a3e0070643a8cfefe6b83d3107">&#9670;&nbsp;</a></span>CoroContext</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class RET &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a15cc22a3e0070643a8cfefe6b83d3107">Bloomberg::quantum::CoroContext</a> = typedef <a class="el" href="../../d5/dd1/structBloomberg_1_1quantum_1_1ICoroContext.html">ICoroContext</a>&lt;RET&gt;</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a8cf6f8fd7d169988428556468b333fe1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8cf6f8fd7d169988428556468b333fe1">&#9670;&nbsp;</a></span>CoroContextPtr</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class RET &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a8cf6f8fd7d169988428556468b333fe1">Bloomberg::quantum::CoroContextPtr</a> = typedef typename <a class="el" href="../../d5/dd1/structBloomberg_1_1quantum_1_1ICoroContext.html">ICoroContext</a>&lt;RET&gt;::Ptr</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="abbf7b4213a463ceb6b795332500d45ab"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abbf7b4213a463ceb6b795332500d45ab">&#9670;&nbsp;</a></span>CoroFuture</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#abbf7b4213a463ceb6b795332500d45ab">Bloomberg::quantum::CoroFuture</a> = typedef <a class="el" href="../../d6/daf/structBloomberg_1_1quantum_1_1ICoroFuture.html">ICoroFuture</a>&lt;T&gt;</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a294434a555befbec5230f5ff03944878"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a294434a555befbec5230f5ff03944878">&#9670;&nbsp;</a></span>CoroFuturePtr</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a294434a555befbec5230f5ff03944878">Bloomberg::quantum::CoroFuturePtr</a> = typedef typename <a class="el" href="../../d6/daf/structBloomberg_1_1quantum_1_1ICoroFuture.html">ICoroFuture</a>&lt;T&gt;::Ptr</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a05313fffd3e95a51956149b9c486083c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a05313fffd3e95a51956149b9c486083c">&#9670;&nbsp;</a></span>CoroPromise</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a05313fffd3e95a51956149b9c486083c">Bloomberg::quantum::CoroPromise</a> = typedef <a class="el" href="../../d7/dc1/structBloomberg_1_1quantum_1_1ICoroPromise.html">ICoroPromise</a>&lt;<a class="el" href="../../d1/d15/classBloomberg_1_1quantum_1_1Promise.html">Promise</a>,T&gt;</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a0d07560d1a211eb6a796c2aae69e00cb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0d07560d1a211eb6a796c2aae69e00cb">&#9670;&nbsp;</a></span>CoroPromisePtr</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a0d07560d1a211eb6a796c2aae69e00cb">Bloomberg::quantum::CoroPromisePtr</a> = typedef typename <a class="el" href="../../d7/dc1/structBloomberg_1_1quantum_1_1ICoroPromise.html">ICoroPromise</a>&lt;<a class="el" href="../../d1/d15/classBloomberg_1_1quantum_1_1Promise.html">Promise</a>,T&gt;::Ptr</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a0322110282aa0ded0fb7e7eefb29c9d0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0322110282aa0ded0fb7e7eefb29c9d0">&#9670;&nbsp;</a></span>CoroStackAllocator</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a0322110282aa0ded0fb7e7eefb29c9d0">Bloomberg::quantum::CoroStackAllocator</a> = typedef <a class="el" href="../../de/d0e/structBloomberg_1_1quantum_1_1CoroutinePoolAllocatorProxy.html">CoroutinePoolAllocatorProxy</a>&lt;<a class="el" href="../../d4/df4/structBloomberg_1_1quantum_1_1StackTraitsProxy.html">StackTraitsProxy</a>&gt;</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a17ad7c3baf65051199af60f377a00fa0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a17ad7c3baf65051199af60f377a00fa0">&#9670;&nbsp;</a></span>FutureAllocator</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a17ad7c3baf65051199af60f377a00fa0">Bloomberg::quantum::FutureAllocator</a> = typedef <a class="el" href="../../d0/d75/structBloomberg_1_1quantum_1_1StackAllocator.html">StackAllocator</a>&lt;<a class="el" href="../../dc/d14/classBloomberg_1_1quantum_1_1Future.html">Future</a>&lt;int&gt;, __QUANTUM_FUTURE_ALLOC_SIZE&gt;</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a016f2e761462e67f027d3a2bcf6e1c67"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a016f2e761462e67f027d3a2bcf6e1c67">&#9670;&nbsp;</a></span>FuturePtr</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a016f2e761462e67f027d3a2bcf6e1c67">Bloomberg::quantum::FuturePtr</a> = typedef typename <a class="el" href="../../dc/d14/classBloomberg_1_1quantum_1_1Future.html">Future</a>&lt;T&gt;::Ptr</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="aec4640deaf69f6f17764e6d9cada2b27"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aec4640deaf69f6f17764e6d9cada2b27">&#9670;&nbsp;</a></span>IContextBasePtr</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#aec4640deaf69f6f17764e6d9cada2b27">Bloomberg::quantum::IContextBasePtr</a> = typedef <a class="el" href="../../d8/db0/structBloomberg_1_1quantum_1_1IContextBase.html#ac92e5d294479f777fd01f5621e4f8db9">IContextBase::Ptr</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ab01325c808be994b5ce507dab2de2161"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab01325c808be994b5ce507dab2de2161">&#9670;&nbsp;</a></span>ICoroContextBasePtr</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#ab01325c808be994b5ce507dab2de2161">Bloomberg::quantum::ICoroContextBasePtr</a> = typedef <a class="el" href="../../de/d67/structBloomberg_1_1quantum_1_1ICoroContextBase.html#aa480ed235fb4eddf594fe5731c54ccab">ICoroContextBase::Ptr</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a915d037edeb7f5e84f69f5a518945576"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a915d037edeb7f5e84f69f5a518945576">&#9670;&nbsp;</a></span>ICoroFutureBasePtr</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a915d037edeb7f5e84f69f5a518945576">Bloomberg::quantum::ICoroFutureBasePtr</a> = typedef <a class="el" href="../../dc/d82/structBloomberg_1_1quantum_1_1ICoroFutureBase.html#a8fdb9918c64ffca16815929757df77fe">ICoroFutureBase::Ptr</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="aece2b88752b9d3cc005357e06dbd4851"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aece2b88752b9d3cc005357e06dbd4851">&#9670;&nbsp;</a></span>ICoroSyncPtr</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#aece2b88752b9d3cc005357e06dbd4851">Bloomberg::quantum::ICoroSyncPtr</a> = typedef <a class="el" href="../../d3/d63/structBloomberg_1_1quantum_1_1ICoroSync.html#a109b2c4b7d70d53d48bb640a9d849b29">ICoroSync::Ptr</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a739e7eaec89907476af7a3be87950b9b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a739e7eaec89907476af7a3be87950b9b">&#9670;&nbsp;</a></span>IoTaskAllocator</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a739e7eaec89907476af7a3be87950b9b">Bloomberg::quantum::IoTaskAllocator</a> = typedef <a class="el" href="../../d0/d75/structBloomberg_1_1quantum_1_1StackAllocator.html">StackAllocator</a>&lt;<a class="el" href="../../d4/d8b/classBloomberg_1_1quantum_1_1IoTask.html">IoTask</a>, __QUANTUM_IO_TASK_ALLOC_SIZE&gt;</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a4f9e9e3aaf6332795085344b060d33e9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4f9e9e3aaf6332795085344b060d33e9">&#9670;&nbsp;</a></span>IoTaskPtr</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a4f9e9e3aaf6332795085344b060d33e9">Bloomberg::quantum::IoTaskPtr</a> = typedef <a class="el" href="../../d4/d8b/classBloomberg_1_1quantum_1_1IoTask.html#af433efa37f8b3dffd03e3aa614acc9f5">IoTask::Ptr</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ab61126f017510de790ef8c58d68b107c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab61126f017510de790ef8c58d68b107c">&#9670;&nbsp;</a></span>IoTaskWeakPtr</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#ab61126f017510de790ef8c58d68b107c">Bloomberg::quantum::IoTaskWeakPtr</a> = typedef <a class="el" href="../../d4/d8b/classBloomberg_1_1quantum_1_1IoTask.html#ab48b088280ea26954a8bd9f789988dc4">IoTask::WeakPtr</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ad3876c58a4fac983a29e2d3aa1712692"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad3876c58a4fac983a29e2d3aa1712692">&#9670;&nbsp;</a></span>IPromiseBasePtr</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#ad3876c58a4fac983a29e2d3aa1712692">Bloomberg::quantum::IPromiseBasePtr</a> = typedef <a class="el" href="../../df/de4/structBloomberg_1_1quantum_1_1IPromiseBase.html#a50506be87412ef38d4bd954ff6285b3e">IPromiseBase::Ptr</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a7d4b3ca717b7edbb5e52879829cb42ad"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7d4b3ca717b7edbb5e52879829cb42ad">&#9670;&nbsp;</a></span>IQueuePtr</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a7d4b3ca717b7edbb5e52879829cb42ad">Bloomberg::quantum::IQueuePtr</a> = typedef <a class="el" href="../../d2/db0/structBloomberg_1_1quantum_1_1IQueue.html#ab4c4a3db733a93ad451c9dc7ffe62824">IQueue::Ptr</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a5045db00eb0e4187faf5ecfbcaefd461"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5045db00eb0e4187faf5ecfbcaefd461">&#9670;&nbsp;</a></span>ITaskAccessorPtr</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a5045db00eb0e4187faf5ecfbcaefd461">Bloomberg::quantum::ITaskAccessorPtr</a> = typedef <a class="el" href="../../d0/d96/structBloomberg_1_1quantum_1_1ITaskAccessor.html#a77cb6ef586bd4e2ee6ae9d3efabf5be9">ITaskAccessor::Ptr</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a0c45225a2550ccfe74897989f0d60231"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0c45225a2550ccfe74897989f0d60231">&#9670;&nbsp;</a></span>ITaskContinuationPtr</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a0c45225a2550ccfe74897989f0d60231">Bloomberg::quantum::ITaskContinuationPtr</a> = typedef <a class="el" href="../../d4/d03/structBloomberg_1_1quantum_1_1ITaskContinuation.html#ad476dfb42152a7407ca71ad9a24941ac">ITaskContinuation::Ptr</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a640696efd612e5588690507d814af1a9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a640696efd612e5588690507d814af1a9">&#9670;&nbsp;</a></span>ITaskContinuationWeakPtr</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a640696efd612e5588690507d814af1a9">Bloomberg::quantum::ITaskContinuationWeakPtr</a> = typedef <a class="el" href="../../d4/d03/structBloomberg_1_1quantum_1_1ITaskContinuation.html#a7f8bd7cd7729c363517994627df51a09">ITaskContinuation::WeakPtr</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a639a8b51def27ff64ee7622a39775d67"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a639a8b51def27ff64ee7622a39775d67">&#9670;&nbsp;</a></span>ITaskPtr</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a639a8b51def27ff64ee7622a39775d67">Bloomberg::quantum::ITaskPtr</a> = typedef <a class="el" href="../../df/daf/structBloomberg_1_1quantum_1_1ITask.html#a6c5b8216547b11f3f0e0e6bc7d20956d">ITask::Ptr</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a07a1e416f4f3ce3b8999b8690d89a6e7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a07a1e416f4f3ce3b8999b8690d89a6e7">&#9670;&nbsp;</a></span>ITaskWeakPtr</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a07a1e416f4f3ce3b8999b8690d89a6e7">Bloomberg::quantum::ITaskWeakPtr</a> = typedef <a class="el" href="../../df/daf/structBloomberg_1_1quantum_1_1ITask.html#aae43ecce0c2cdbdfa677d9d0846f1e48">ITask::WeakPtr</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a43309e2c15f17b8d7accac5ba695f1e3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a43309e2c15f17b8d7accac5ba695f1e3">&#9670;&nbsp;</a></span>IThreadContextBasePtr</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a43309e2c15f17b8d7accac5ba695f1e3">Bloomberg::quantum::IThreadContextBasePtr</a> = typedef <a class="el" href="../../da/d4d/structBloomberg_1_1quantum_1_1IThreadContextBase.html#a95643a462eecd0836f9fd348703f77a2">IThreadContextBase::Ptr</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="aa1df32c3cb7ac67a6ebeb27e77fd1a71"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa1df32c3cb7ac67a6ebeb27e77fd1a71">&#9670;&nbsp;</a></span>IThreadFutureBasePtr</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#aa1df32c3cb7ac67a6ebeb27e77fd1a71">Bloomberg::quantum::IThreadFutureBasePtr</a> = typedef <a class="el" href="../../d1/d2d/structBloomberg_1_1quantum_1_1IThreadFutureBase.html#a7a5e5adf9e104bef3f570aace79ecf5c">IThreadFutureBase::Ptr</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a0a7dd2b5f475bbecb11bfa87fcc251c5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0a7dd2b5f475bbecb11bfa87fcc251c5">&#9670;&nbsp;</a></span>NonBufferRetType</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a0a7dd2b5f475bbecb11bfa87fcc251c5">Bloomberg::quantum::NonBufferRetType</a> = typedef std::enable_if_t&lt;!<a class="el" href="../../da/d88/structBloomberg_1_1quantum_1_1Traits_1_1IsBuffer.html">Traits::IsBuffer</a>&lt;T&gt;::value, typename <a class="el" href="../../da/d88/structBloomberg_1_1quantum_1_1Traits_1_1IsBuffer.html">Traits::IsBuffer</a>&lt;T&gt;::Type&gt;</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a7dfd30e4d4fe997b548ac41bad9d802d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7dfd30e4d4fe997b548ac41bad9d802d">&#9670;&nbsp;</a></span>NonBufferType</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T , class V &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a7dfd30e4d4fe997b548ac41bad9d802d">Bloomberg::quantum::NonBufferType</a> = typedef std::enable_if_t&lt;!<a class="el" href="../../da/d88/structBloomberg_1_1quantum_1_1Traits_1_1IsBuffer.html">Traits::IsBuffer</a>&lt;T&gt;::value &amp;&amp; std::is_convertible&lt;std::decay_t&lt;V&gt;,T&gt;::value&gt;</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a1a2e0d923f82da056e0f6be6b599491d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1a2e0d923f82da056e0f6be6b599491d">&#9670;&nbsp;</a></span>PromiseAllocator</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a1a2e0d923f82da056e0f6be6b599491d">Bloomberg::quantum::PromiseAllocator</a> = typedef <a class="el" href="../../d0/d75/structBloomberg_1_1quantum_1_1StackAllocator.html">StackAllocator</a>&lt;<a class="el" href="../../d1/d15/classBloomberg_1_1quantum_1_1Promise.html">Promise</a>&lt;int&gt;, __QUANTUM_PROMISE_ALLOC_SIZE&gt;</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="afdd6d891441a24d705b1c015beb9ad3c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afdd6d891441a24d705b1c015beb9ad3c">&#9670;&nbsp;</a></span>PromisePtr</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#afdd6d891441a24d705b1c015beb9ad3c">Bloomberg::quantum::PromisePtr</a> = typedef typename <a class="el" href="../../d1/d15/classBloomberg_1_1quantum_1_1Promise.html">Promise</a>&lt;T&gt;::Ptr</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a8a48c732495dfe1af2d8bf0e3febe94f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8a48c732495dfe1af2d8bf0e3febe94f">&#9670;&nbsp;</a></span>QueueListAllocator</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a8a48c732495dfe1af2d8bf0e3febe94f">Bloomberg::quantum::QueueListAllocator</a> = typedef <a class="el" href="../../d0/d75/structBloomberg_1_1quantum_1_1StackAllocator.html">StackAllocator</a>&lt;<a class="el" href="../../df/daf/structBloomberg_1_1quantum_1_1ITask.html#a6c5b8216547b11f3f0e0e6bc7d20956d">ITask::Ptr</a>, __QUANTUM_QUEUE_LIST_ALLOC_SIZE&gt;</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a292c501146e1903614156e96d5c463a7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a292c501146e1903614156e96d5c463a7">&#9670;&nbsp;</a></span>StatsPtr</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a292c501146e1903614156e96d5c463a7">Bloomberg::quantum::StatsPtr</a> = typedef std::shared_ptr&lt;<a class="el" href="../../d3/dc5/classBloomberg_1_1quantum_1_1SequenceKeyStatisticsWriter.html">SequenceKeyStatisticsWriter</a>&gt;</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ac92fc09d9f3ed4dbc0c98347d66c6f8f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac92fc09d9f3ed4dbc0c98347d66c6f8f">&#9670;&nbsp;</a></span>TaskAllocator</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#ac92fc09d9f3ed4dbc0c98347d66c6f8f">Bloomberg::quantum::TaskAllocator</a> = typedef <a class="el" href="../../d0/d75/structBloomberg_1_1quantum_1_1StackAllocator.html">StackAllocator</a>&lt;<a class="el" href="../../d0/d90/classBloomberg_1_1quantum_1_1Task.html">Task</a>, __QUANTUM_TASK_ALLOC_SIZE&gt;</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a758f35e0635ed43756e7992c606e8333"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a758f35e0635ed43756e7992c606e8333">&#9670;&nbsp;</a></span>TaskDispatcher</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a758f35e0635ed43756e7992c606e8333">Bloomberg::quantum::TaskDispatcher</a> = typedef <a class="el" href="../../d0/da5/classBloomberg_1_1quantum_1_1Dispatcher.html">Dispatcher</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a5f91f05820a064e723e10167648d8342"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5f91f05820a064e723e10167648d8342">&#9670;&nbsp;</a></span>TaskPtr</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a5f91f05820a064e723e10167648d8342">Bloomberg::quantum::TaskPtr</a> = typedef <a class="el" href="../../d0/d90/classBloomberg_1_1quantum_1_1Task.html#a2d6e0bcef2e9f07d966c9734f92f4969">Task::Ptr</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="aa61aef64edf4108e212ca1660461d9cf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa61aef64edf4108e212ca1660461d9cf">&#9670;&nbsp;</a></span>TaskWeakPtr</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#aa61aef64edf4108e212ca1660461d9cf">Bloomberg::quantum::TaskWeakPtr</a> = typedef <a class="el" href="../../d0/d90/classBloomberg_1_1quantum_1_1Task.html#a5a1f2d26f8f0edb3ac2ff31e36e497ca">Task::WeakPtr</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="aa9da8335ae6292074d0ccaf31b85bf35"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa9da8335ae6292074d0ccaf31b85bf35">&#9670;&nbsp;</a></span>ThreadContext</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class RET &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#aa9da8335ae6292074d0ccaf31b85bf35">Bloomberg::quantum::ThreadContext</a> = typedef <a class="el" href="../../da/de3/structBloomberg_1_1quantum_1_1IThreadContext.html">IThreadContext</a>&lt;RET&gt;</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="aa26dcdfb6c3930c1cd2b4000d8711f4c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa26dcdfb6c3930c1cd2b4000d8711f4c">&#9670;&nbsp;</a></span>ThreadContextPtr</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class RET &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#aa26dcdfb6c3930c1cd2b4000d8711f4c">Bloomberg::quantum::ThreadContextPtr</a> = typedef typename <a class="el" href="../../da/de3/structBloomberg_1_1quantum_1_1IThreadContext.html">IThreadContext</a>&lt;RET&gt;::Ptr</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a5fb1fad9d98cf52df3131ea26d85fa99"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5fb1fad9d98cf52df3131ea26d85fa99">&#9670;&nbsp;</a></span>ThreadFuture</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a5fb1fad9d98cf52df3131ea26d85fa99">Bloomberg::quantum::ThreadFuture</a> = typedef <a class="el" href="../../dc/d82/structBloomberg_1_1quantum_1_1IThreadFuture.html">IThreadFuture</a>&lt;T&gt;</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a742e0d39218b80ae60f30d47ae58bbc9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a742e0d39218b80ae60f30d47ae58bbc9">&#9670;&nbsp;</a></span>ThreadFuturePtr</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a742e0d39218b80ae60f30d47ae58bbc9">Bloomberg::quantum::ThreadFuturePtr</a> = typedef typename <a class="el" href="../../dc/d82/structBloomberg_1_1quantum_1_1IThreadFuture.html">IThreadFuture</a>&lt;T&gt;::Ptr</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ade87d49e44470f3d0633488c46902d80"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ade87d49e44470f3d0633488c46902d80">&#9670;&nbsp;</a></span>ThreadPromise</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#ade87d49e44470f3d0633488c46902d80">Bloomberg::quantum::ThreadPromise</a> = typedef <a class="el" href="../../da/deb/structBloomberg_1_1quantum_1_1IThreadPromise.html">IThreadPromise</a>&lt;<a class="el" href="../../d1/d15/classBloomberg_1_1quantum_1_1Promise.html">Promise</a>,T&gt;</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a29fb505e41c528b77405836d345259c6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a29fb505e41c528b77405836d345259c6">&#9670;&nbsp;</a></span>ThreadPromisePtr</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a29fb505e41c528b77405836d345259c6">Bloomberg::quantum::ThreadPromisePtr</a> = typedef typename <a class="el" href="../../da/deb/structBloomberg_1_1quantum_1_1IThreadPromise.html">IThreadPromise</a>&lt;<a class="el" href="../../d1/d15/classBloomberg_1_1quantum_1_1Promise.html">Promise</a>,T&gt;::Ptr</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="ab4861ce4c0d0ece44adc70e68ff02131"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab4861ce4c0d0ece44adc70e68ff02131">&#9670;&nbsp;</a></span>YieldingThread</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#ab4861ce4c0d0ece44adc70e68ff02131">Bloomberg::quantum::YieldingThread</a> = typedef <a class="el" href="../../dd/d4a/structBloomberg_1_1quantum_1_1YieldingThreadDuration.html">YieldingThreadDuration</a>&lt;std::chrono::microseconds&gt;</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a id="a9322decc3c78f19a6262e572bd276b5f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9322decc3c78f19a6262e572bd276b5f">&#9670;&nbsp;</a></span>BufferStatus</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a9322decc3c78f19a6262e572bd276b5f">Bloomberg::quantum::BufferStatus</a></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Defines the result of the operation on the buffer object. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a9322decc3c78f19a6262e572bd276b5fa7cb909f0a99503e1467332b96cd96f6a"></a>DataReceived&#160;</td><td class="fielddoc"><p>Data has been successfully read from the buffer. </p>
</td></tr>
<tr><td class="fieldname"><a id="a9322decc3c78f19a6262e572bd276b5faac199d4dcab428037a9c299011630100"></a>DataPosted&#160;</td><td class="fielddoc"><p>Data has been successfully written to the buffer. </p>
</td></tr>
<tr><td class="fieldname"><a id="a9322decc3c78f19a6262e572bd276b5fad14d1a5e6629f19700c4a31866f8fd63"></a>DataPending&#160;</td><td class="fielddoc"><p><a class="el" href="../../d1/d87/classBloomberg_1_1quantum_1_1Buffer.html" title="Container which allows buffered access to a series of values. Values are pushed-in (written) by a pro...">Buffer</a> is empty and more data is on the way. </p>
</td></tr>
<tr><td class="fieldname"><a id="a9322decc3c78f19a6262e572bd276b5fa03f4a47830f97377a35321051685071e"></a>Closed&#160;</td><td class="fielddoc"><p><a class="el" href="../../d1/d87/classBloomberg_1_1quantum_1_1Buffer.html" title="Container which allows buffered access to a series of values. Values are pushed-in (written) by a pro...">Buffer</a> is closed. Push operations are not allowed. Pull operations are allowed until buffer is emtpy. </p>
</td></tr>
</table>

</div>
</div>
<a id="aae5974140a54463c3c55040f00e6f70b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aae5974140a54463c3c55040f00e6f70b">&#9670;&nbsp;</a></span>FutureState</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#aae5974140a54463c3c55040f00e6f70b">Bloomberg::quantum::FutureState</a></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Represents the internal state of a future/promise pair. Modeled after std::future_errc. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="aae5974140a54463c3c55040f00e6f70ba9f313dd07b53e94bc9b9b31be09f2079"></a>PromiseNotSatisfied&#160;</td><td class="fielddoc"><p><a class="el" href="../../dc/d14/classBloomberg_1_1quantum_1_1Future.html" title="Class representing a promised future. Can only be instantiated via a Promise object.">Future</a> value has not yet been set. </p>
</td></tr>
<tr><td class="fieldname"><a id="aae5974140a54463c3c55040f00e6f70ba26bfa0eb1b346b9dd4ec67d295ad14a6"></a>PromiseAlreadySatisfied&#160;</td><td class="fielddoc"><p><a class="el" href="../../dc/d14/classBloomberg_1_1quantum_1_1Future.html" title="Class representing a promised future. Can only be instantiated via a Promise object.">Future</a> value has been set but not yet consumed. </p>
</td></tr>
<tr><td class="fieldname"><a id="aae5974140a54463c3c55040f00e6f70ba30a0125c796cabdb8c4b0073aff78888"></a>BrokenPromise&#160;</td><td class="fielddoc"><p><a class="el" href="../../d1/d15/classBloomberg_1_1quantum_1_1Promise.html" title="Class representing a promised value.">Promise</a> could not be fulfilled. </p>
</td></tr>
<tr><td class="fieldname"><a id="aae5974140a54463c3c55040f00e6f70baf89cf46ee0df3455e721aead6e7591fa"></a>FutureAlreadyRetrieved&#160;</td><td class="fielddoc"><p><a class="el" href="../../dc/d14/classBloomberg_1_1quantum_1_1Future.html" title="Class representing a promised future. Can only be instantiated via a Promise object.">Future</a> value has been consumed. In the case of a buffer, no pulling is allowed. </p>
</td></tr>
<tr><td class="fieldname"><a id="aae5974140a54463c3c55040f00e6f70baabe824ed9425fdb3db384cc081c7b41c"></a>NoState&#160;</td><td class="fielddoc"><p>Shared state between <a class="el" href="../../d1/d15/classBloomberg_1_1quantum_1_1Promise.html" title="Class representing a promised value.">Promise</a> and <a class="el" href="../../dc/d14/classBloomberg_1_1quantum_1_1Future.html" title="Class representing a promised future. Can only be instantiated via a Promise object.">Future</a> is invalid. </p>
</td></tr>
<tr><td class="fieldname"><a id="aae5974140a54463c3c55040f00e6f70baaa217200c8ae10d76e314216bc4f29ab"></a>BufferingData&#160;</td><td class="fielddoc"><p>Buffered future is being streamed. </p>
</td></tr>
<tr><td class="fieldname"><a id="aae5974140a54463c3c55040f00e6f70ba444aecf3cf9ff4046b30c4d603967093"></a>BufferClosed&#160;</td><td class="fielddoc"><p><a class="el" href="../../d1/d87/classBloomberg_1_1quantum_1_1Buffer.html" title="Container which allows buffered access to a series of values. Values are pushed-in (written) by a pro...">Buffer</a> is closed for pushing data. Data can still be pulled. </p>
</td></tr>
</table>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="aef8beaf54de48000e2c6332e0f9d6d18"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aef8beaf54de48000e2c6332e0f9d6d18">&#9670;&nbsp;</a></span>apply()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename RET , typename FUNC , typename... ARGS, typename... T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">RET Bloomberg::quantum::apply </td>
          <td>(</td>
          <td class="paramtype">FUNC &amp;&amp;&#160;</td>
          <td class="paramname"><em>func</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::tuple&lt; ARGS... &gt; &amp;&amp;&#160;</td>
          <td class="paramname"><em>tuple</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">T &amp;&amp;...&#160;</td>
          <td class="paramname"><em>t</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a3f62a3c39e5b68f1fe7cb27d133ccb16"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3f62a3c39e5b68f1fe7cb27d133ccb16">&#9670;&nbsp;</a></span>apply_impl()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename RET , typename FUNC , typename... ARGS, size_t... I, typename... T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">RET Bloomberg::quantum::apply_impl </td>
          <td>(</td>
          <td class="paramtype">FUNC &amp;&amp;&#160;</td>
          <td class="paramname"><em>func</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::tuple&lt; ARGS... &gt; &amp;&amp;&#160;</td>
          <td class="paramname"><em>tuple</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::index_sequence&lt; I... &gt;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">T &amp;&amp;...&#160;</td>
          <td class="paramname"><em>t</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a0ec34a6d5d7612a13176ed8b1d7aa01b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0ec34a6d5d7612a13176ed8b1d7aa01b">&#9670;&nbsp;</a></span>bindCoro()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename RET , typename CAPTURE &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">int Bloomberg::quantum::bindCoro </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="../../d6/d86/structBloomberg_1_1quantum_1_1Traits.html#a2730a4e218f1af1a4e3f64e80ed7bbfc">Traits::Yield</a> &amp;&#160;</td>
          <td class="paramname"><em>yield</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::shared_ptr&lt; <a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#a15cc22a3e0070643a8cfefe6b83d3107">CoroContext</a>&lt; RET &gt;&gt;&#160;</td>
          <td class="paramname"><em>ctx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">CAPTURE &amp;&amp;&#160;</td>
          <td class="paramname"><em>capture</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="abcada63b5e5ccd40f931191585997228"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abcada63b5e5ccd40f931191585997228">&#9670;&nbsp;</a></span>bindIo()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename RET , typename CAPTURE &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">int Bloomberg::quantum::bindIo </td>
          <td>(</td>
          <td class="paramtype">std::shared_ptr&lt; <a class="el" href="../../d1/d15/classBloomberg_1_1quantum_1_1Promise.html">Promise</a>&lt; RET &gt;&gt;&#160;</td>
          <td class="paramname"><em>promise</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">CAPTURE &amp;&amp;&#160;</td>
          <td class="paramname"><em>capture</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a0ddddf38209f4add2a3784f4e7c3d425"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0ddddf38209f4add2a3784f4e7c3d425">&#9670;&nbsp;</a></span>makeCapture()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename FUNC , typename ... ARGS&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="../../db/dda/classBloomberg_1_1quantum_1_1Capture.html">Capture</a>&lt; FUNC, ARGS... &gt; Bloomberg::quantum::makeCapture </td>
          <td>(</td>
          <td class="paramtype">FUNC &amp;&amp;&#160;</td>
          <td class="paramname"><em>func</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ARGS &amp;&amp;...&#160;</td>
          <td class="paramname"><em>args</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a75c5cdadd35fd61b43b04b55d718a927"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a75c5cdadd35fd61b43b04b55d718a927">&#9670;&nbsp;</a></span>operator+()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="../../d1/d7b/classBloomberg_1_1quantum_1_1QueueStatistics.html">QueueStatistics</a> Bloomberg::quantum::operator+ </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="../../d1/d7b/classBloomberg_1_1quantum_1_1QueueStatistics.html">QueueStatistics</a>&#160;</td>
          <td class="paramname"><em>lhs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="../../d5/de7/structBloomberg_1_1quantum_1_1IQueueStatistics.html">IQueueStatistics</a> &amp;&#160;</td>
          <td class="paramname"><em>rhs</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a id="af910e15f8a8d99a2c848a9f424835f6a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af910e15f8a8d99a2c848a9f424835f6a">&#9670;&nbsp;</a></span>operator&lt;&lt;()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::ostream &amp; Bloomberg::quantum::operator&lt;&lt; </td>
          <td>(</td>
          <td class="paramtype">std::ostream &amp;&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="../../d5/de7/structBloomberg_1_1quantum_1_1IQueueStatistics.html">IQueueStatistics</a> &amp;&#160;</td>
          <td class="paramname"><em>stats</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Overloads stream operator for <a class="el" href="../../d5/de7/structBloomberg_1_1quantum_1_1IQueueStatistics.html" title="Interface to access and manipulate a QueueStatistics object.">IQueueStatistics</a> object. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">out</td><td>Output stream. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">stats</td><td>Statistics object to stream. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Reference to the same input stream. </dd></dl>

</div>
</div>
<a id="a4206774a667bbdbc8c8cc1fd905e051c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4206774a667bbdbc8c8cc1fd905e051c">&#9670;&nbsp;</a></span>ThrowFutureException()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void Bloomberg::quantum::ThrowFutureException </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html#aae5974140a54463c3c55040f00e6f70b">FutureState</a>&#160;</td>
          <td class="paramname"><em>state</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="../../d6/db9/namespaceBloomberg.html">Bloomberg</a></li><li class="navelem"><a class="el" href="../../dc/d48/namespaceBloomberg_1_1quantum.html">quantum</a></li>
    <li class="footer">Generated by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="../../doxygen.png" alt="doxygen"/></a> 1.8.15 </li>
  </ul>
</div>
</body>
</html>
